package com.ruoyi.contract.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 收款管理对象 collection_bill
 * 
 * @author 张毅然
 * @date 2021-04-26
 */
public class CollectionBill extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private String gid;

    /** 收款单编号 */
    @Excel(name = "收款单编号")
    private String code;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String customer;

    /** 合同ID */
    @Excel(name = "合同ID")
    private String contractId;

    /** 发票ID */
    @Excel(name = "发票ID")
    private String invoiceId;

    /** 单据状态 */
    @Excel(name = "单据状态")
    private Integer state;

    /** 收款金额 */
    @Excel(name = "收款金额")
    private BigDecimal amount;

    /** 收款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date billData;

    /** 收款人 */
    @Excel(name = "收款人")
    private String billUser;

    public void setGid(String gid) 
    {
        this.gid = gid;
    }

    public String getGid() 
    {
        return gid;
    }
    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }
    public void setCustomer(String customer) 
    {
        this.customer = customer;
    }

    public String getCustomer() 
    {
        return customer;
    }
    public void setContractId(String contractId) 
    {
        this.contractId = contractId;
    }

    public String getContractId() 
    {
        return contractId;
    }
    public void setInvoiceId(String invoiceId) 
    {
        this.invoiceId = invoiceId;
    }

    public String getInvoiceId() 
    {
        return invoiceId;
    }
    public void setState(Integer state) 
    {
        this.state = state;
    }

    public Integer getState() 
    {
        return state;
    }
    public void setAmount(BigDecimal amount) 
    {
        this.amount = amount;
    }

    public BigDecimal getAmount() 
    {
        return amount;
    }
    public void setBillData(Date billData) 
    {
        this.billData = billData;
    }

    public Date getBillData() 
    {
        return billData;
    }
    public void setBillUser(String billUser) 
    {
        this.billUser = billUser;
    }

    public String getBillUser() 
    {
        return billUser;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("gid", getGid())
            .append("code", getCode())
            .append("customer", getCustomer())
            .append("contractId", getContractId())
            .append("invoiceId", getInvoiceId())
            .append("state", getState())
            .append("amount", getAmount())
            .append("billData", getBillData())
            .append("billUser", getBillUser())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
